home *** CD-ROM | disk | FTP | other *** search
/ Chip 2007 January, February, March & April / Chip-Cover-CD-2007-02.iso / Pakiet bezpieczenstwa / mini Pentoo LiveCD 2006.1 / mpentoo-2006.1.iso / livecd.squashfs / sbin / installkernel < prev    next >
Text File  |  2006-04-25  |  2KB  |  68 lines

  1. #!/bin/sh
  2. # Copyright (C) 1995 - 1998, Ian A. Murdock <imurdock@debian.org>
  3. # Copyright (C) 1998, 1999, Guy Maor
  4. # Copyright (C) 2002, Matthew Wilcox
  5. # Copyright (C) 2002, 2004, 2005, Clint Adams
  6. #
  7. # Install the kernel on a Debian Linux system.
  8. #
  9. # This script is called from /usr/src/linux/arch/i386/boot/install.sh.
  10. # If you install it as /sbin/installkernel, you can do a "make install"
  11. # from a generic kernel source tree, and the image will be installed to
  12. # the proper place for Debian GNU/Linux.
  13.  
  14. set -e
  15.  
  16. if [ $# -eq 3 ] || [ $# -eq 4 ] ; then
  17.   img="$2"
  18.   map="$3"
  19.   ver="$1"
  20.   if [ $# -eq 4 ] && [ -n "$4" ] ; then
  21.       dir="$4"
  22.   else
  23.       dir="/boot"
  24.   fi
  25. else
  26.   echo "Usage: installkernel <version> <image> <System.map> <directory>"
  27.   exit 1
  28. fi
  29.  
  30. updatever () {
  31.   if [ -f "$dir/$1-$ver" ] ; then
  32.     mv "$dir/$1-$ver" "$dir/$1-$ver.old"
  33.   fi
  34.  
  35.   cat "$2" > "$dir/$1-$ver"
  36.  
  37.   if test -f "$dir/$1" ; then
  38.     if test -L "$dir/$1" &&
  39.        [ "$(readlink -f ${dir}/${1})" = "${dir}/${1}-${ver}" ]; then
  40.       ln -sf "$1-$ver.old" "$dir/$1.old"
  41.     else
  42.       mv "$dir/$1" "$dir/$1.old"
  43.     fi
  44.   fi
  45.  
  46.   ln -sf "$1-$ver" "$dir/$1"
  47. }
  48.  
  49. if [ "$(basename $img)" = "vmlinux" ] ; then
  50.   updatever vmlinux "$img"
  51. else
  52.   updatever vmlinuz "$img"
  53. fi
  54. updatever System.map "$map"
  55.  
  56. config=$(dirname "$map")
  57. config="${config}/.config"
  58. if [ -f "$config" ] ; then
  59.   updatever config "$config"
  60. fi
  61.  
  62. if [ "$(basename $img)" = "vmlinux" ] ; then
  63.   mkboot -i ${dir}/vmlinux-${ver}
  64. else
  65.   mkboot -i ${dir}/vmlinuz-${ver}
  66. fi
  67.